---
title: DataStax
sidebarTitle: DataStax
---

This is the implementation of the DataStax data handler for MindsDB.

[DataStax](https://www.datastax.com/) Astra DB is a cloud database-as-a-service based on Apache Cassandra. DataStax also offers DataStax Enterprise (DSE), an on-premises database built on Apache Cassandra, and Astra Streaming, a messaging and event streaming cloud service based on Apache Pulsar.

## Prerequisites

Before proceeding, ensure the following prerequisites are met:

1. Install MindsDB [locally via Docker](https://docs.mindsdb.com/setup/self-hosted/docker) or use [MindsDB Cloud](https://cloud.mindsdb.com/).
2. To connect DataStax to MindsDB, install the required dependencies following [this instruction](/setup/self-hosted/docker#install-dependencies).
3. Install or ensure access to DataStax.

## Implementation

DataStax Astra DB is API-compatible with Apache Cassandra and ScyllaDB. Therefore, its implementation extends the ScyllaDB handler and is using the `scylla-driver` Python library.

The required arguments to establish a connection are as follows:

* `user` is the user to authenticate.
* `password` is the password to authenticate the user.
* `secure_connect_bundle` is the path to the `secure_connect_bundle` zip file.

## Usage

In order to make use of this handler and connect to the Astra DB database in MindsDB, the following syntax can be used:

```sql
CREATE DATABASE astra_connection
WITH
    engine = "astra",
    parameters = {
        "user": "user",
        "password": "pass",
        "secure_connect_bundle": "/home/Downloads/file.zip"
    };
```


or, reference the bundle from Datastax s3 as:

```sql
CREATE DATABASE astra_connection
WITH ENGINE = "astra",
PARAMETERS = {
    "user": "user",
    "password": "pass",
    "secure_connect_bundle": "https://datastax-cluster-config-prod.s3.us-east-2.amazonaws.com/32312-b9eb-4e09-a641-213eaesa12-1/secure-connect-demo.zip?X-Amz-Algorithm=AWS4-HMAC-SHA256&X-Amz-Credential=AK..."
}  
```

You can use this established connection to query your table as follows:

```sql
SELECT *
FROM astra_connection.keystore.example_table
LIMIT 10;
```
